from file_define import TextFileReader, JsonFileReader
from data_define import Record
from pymysql import Connection
# 从文本文件和 JSON 文件中读取数据，并将这些数据插入到MySQL数据库的orders表中。
text_file_reader = TextFileReader("D:\Data_EX\数据分析.txt")
json_file_reader = JsonFileReader("D:\Data_EX\数据分析json.txt")

Sep_data:list[Record] = text_file_reader.read_data()
Oct_data:list[Record] = json_file_reader.read_data()
all_data = Sep_data + Oct_data
#构建对象
conn= Connection(
    host= "localhost",
    port = 3306,
    user= "root",
    password= "123456",
    autocommit=True # 设置自动提交，否则每次输入数据都需要在执行sql语句后加上conn.commit()命令确认
)
if __name__ == '__main__':
    cursor = conn.cursor()# 使用 cursor() 方法创建一个游标对象 cursor
    conn.select_db("test")
    for record in all_data: # 遍历 all_data 列表中的每个 Record 对象，构造插入语句并将其插入到 orders 表中。
        sql = (f"insert into orders(order_date, order_id, money, province)"
               f"values('{record.date}','{record.order_id}',{record.money},'{record.province}')")
        # print(sql)
        cursor.execute(sql)
    conn.close()
